home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Dr. Windows 3
/
dr win3.zip
/
dr win3
/
WINWORDS
/
WINE02BX.ZIP
/
LISP
/
MODES
/
BIBTEX.ELC
< prev
next >
Wrap
Text File
|
1993-03-28
|
20KB
|
201 lines
;;; compiled by @win386 on Sat Mar 13 14:30:13 1993
;;; from file c:/src/lucid-19.4/lisp/modes/bibtex.el
;;; emacs version 19.3 Lucid.
;;; bytecomp version 2.08; 27-aug-92.
;;; optimization is on.
;;; this file uses opcodes which do not exist in Emacs18.
(if (and (boundp 'emacs-version)
(or (and (boundp 'epoch::version) epoch::version)
(string-lessp emacs-version "19")))
(error "This file was compiled for Emacs19."))
(defvar bibtex-mode-syntax-table nil "\
")
(defvar bibtex-mode-abbrev-table nil "\
")
(define-abbrev-table 'bibtex-mode-abbrev-table nil)
(defvar bibtex-mode-map (make-sparse-keymap) "\
")
(defvar bibtex-pop-previous-search-point nil "\
Next point where bibtex-pop-previous should start looking for a similar
entry.")
(defvar bibtex-pop-next-search-point nil "\
Next point where bibtex-pop-next should start looking for a similar
entry.")
(fset 'bibtex-cfield #[(name text) "└ ┬─░ç" [",[ \n]*\\(" name "\\)[ \n]*=[ \n]*\\(" text "\\)"] 5 "\
Create a regexp for a bibtex field of name NAME and text TEXT"])
(defconst bibtex-name-in-cfield 1 "\
The regexp subexpression number of the name part in bibtex-cfield.")
(defconst bibtex-text-in-cfield 2 "\
The regexp subexpression number of the text part in bibtex-cfield.")
(defconst bibtex-field-name "[A-Za-z][---A-Za-z0-9:_+]*" "\
Regexp defining the name part of a bibtex field.")
(defconst bibtex-field-text "\"[^\"]*[^\\\\]\"\\|\"\"\\|[0-9A-Za-z][---A-Za-z0-9:_+]*" "\
Regexp defining the text part of a bibtex field: either a string, or an empty string, or a constant.")
(defconst bibtex-field (bibtex-cfield bibtex-field-name bibtex-field-text) "\
Regexp defining the format of a bibtex field")
(defconst bibtex-name-in-field bibtex-name-in-cfield "\
The regexp subexpression number of the name part in bibtex-field")
(defconst bibtex-text-in-field bibtex-text-in-cfield "\
The regexp subexpression number of the text part in bibtex-field")
(defconst bibtex-reference-type "@[A-Za-z]+" "\
Regexp defining the type part of a bibtex reference entry")
(defconst bibtex-reference-head (concat "^[ ]*\\(" bibtex-reference-type "\\)[ ]*[({]\\(" bibtex-field-name "\\)") "\
Regexp defining format of the header line of a bibtex reference entry")
(defconst bibtex-type-in-head 1 "\
The regexp subexpression number of the type part in bibtex-reference-head")
(defconst bibtex-key-in-head 2 "\
The regexp subexpression number of the key part in
bibtex-reference-head")
(defconst bibtex-reference (concat bibtex-reference-head "\\([ \n]*" bibtex-field "\\)*" "[ \n]*[})]") "\
Regexp defining the format of a bibtex reference entry")
(defconst bibtex-type-in-reference bibtex-type-in-head "\
The regexp subexpression number of the type part in bibtex-reference")
(defconst bibtex-key-in-reference bibtex-key-in-head "\
The regexp subexpression number of the key part in
bibtex-reference")
(defconst bibtex-string (concat "^[ ]*@[sS][tT][rR][iI][nN][gG][ \n]*[({][ \n]*\\(" bibtex-field-name "\\)[ \n]*=[ \n]*\\(" bibtex-field-text "\\)[ \n]*[})]") "\
Regexp defining the format of a bibtex string entry")
(defconst bibtex-name-in-string 1 "\
The regexp subexpression of the name part in bibtex-string")
(defconst bibtex-text-in-string 2 "\
The regexp subexpression of the text part in bibtex-string")
(defconst bibtex-name-alignement 2 "\
Alignment for the name part in BibTeX fields.
Chosen on aesthetic grounds only.")
(defconst bibtex-text-alignment (length " organization = ") "\
Alignment for the text part in BibTeX fields.
Equal to the space needed for the longest name part.")
(fset 'bibtex-mode #[nil "└ ê ½å┬ !ê¬┤├ ┬ !ê─┼╞\"ê─╟╚\"ê─╔╩\"ê─╦╠\"ê─═╠\"ê─╬╧\"ê─╨╤\"ê─╥╤\"ê─╙╘\"ê╒!ê╫┘┬ !ê▌▐!ê▀αßΓ#êαπΣ#êασµ#êατΦ#êαΘΩ#êαδ∞#êαφε#êα∩≡#êα±≥#êα≤⌠#êα⌡÷#êα≈°#êα∙·#êα√ⁿ#êα²°#êα■ #êαü@üA#êαüBüC#êαüDüE#êαüFüG#êαüHüI#êαüJüK#êαüLüM#êαüNüO#êüPüQ!êRüQ\\SüTüU!ç" [kill-all-local-variables bibtex-mode-syntax-table set-syntax-table make-syntax-table modify-syntax-entry 34 "." 36 "$$ " 37 "< " 39 "w " 64 92 "\\" 12 "> " 10 126 " " use-local-map bibtex-mode-map bibtex-mode major-mode "BibTeX" mode-name bibtex-mode-abbrev-table local-abbrev-table make-local-variable paragraph-start "^[ \n ]*$" define-key " " bibtex-find-text "\n" bibtex-next-field "\"" bibtex-remove-double-quotes "" bibtex-clean-entry "?" describe-mode "" bibtex-pop-previous "" bibtex-pop-next "" bibtex-kill-optional-field "" bibtex-empty-field "" bibtex-Article "" bibtex-Book "" bibtex-InProceedings " " bibtex-InBook "i" bibtex-InCollection "I" "" bibtex-Manual "m" bibtex-MastersThesis "M" bibtex-Misc "" bibtex-remove-OPT "" bibtex-PhdThesis "p" bibtex-Proceedings "" bibtex-TechReport "" bibtex-string "" bibtex-Unpublished auto-fill-mode 1 bibtex-text-alignment left-margin run-hooks bibtex-mode-hook] 4 "\
Major mode for editing bibtex files.
\\{bibtex-mode-map}
A command such as \\[bibtex-Book] will outline the fields for a BibTeX book entry.
The optional fields start with the string OPT, and thus ignored by BibTeX.
The OPT string may be removed from a field with \\[bibtex-remove-OPT].
\\[bibtex-kill-optional-field] kills the current optional field entirely.
\\[bibtex-remove-double-quotes] removes the double-quotes around the text of
the current field. \\[bibtex-empty-field] replaces the text of the current
field with the default \"\".
The command \\[bibtex-clean-entry] cleans the current entry, i.e. (i) removes
double-quotes from entirely numerical fields, (ii) removes OPT from all
non-empty optional fields, (iii) removes all empty optional fields, and (iv)
checks that no non-optional fields are empty.
Use \\[bibtex-find-text] to position the dot at the end of the current field.
Use \\[bibtex-next-field] to move to end of the next field.
\\[bibtex-x-environment] binds a mode-specific X menu to control+right
mouse button.
\\[bibtex-sun-environment] binds a mode-specific Sun menu to right
mouse button.
Fields:
address
Publisher's address
annote
Long annotation used for annotated bibliographies (begins sentence)
author
Name(s) of author(s), in BibTeX name format
booktitle
Book title when the thing being referenced isn't the whole book.
For book entries, the title field should be used instead.
chapter
Chapter number
edition
Edition of a book (e.g., \"second\")
editor
Name(s) of editor(s), in BibTeX name format.
If there is also an author field, then the editor field should be
for the book or collection that the work appears in
howpublished
How something strange has been published (begins sentence)
institution
Sponsoring institution
journal
Journal name (macros are provided for many)
key
Alphabetizing and labeling key (needed when no author or editor)
month
Month (macros are provided)
note
To help the reader find a reference (begins sentence)
number
Number of a journal or technical report
organization
Organization (sponsoring a conference)
pages
Page number or numbers (use `--' to separate a range)
publisher
Publisher name
school
School name (for theses)
series
The name of a series or set of books.
An individual book will will also have it's own title
title
The title of the thing being referenced
type
Type of a technical report (e.g., \"Research Note\") to be used
instead of the default \"Technical Report\"
volume
Volume of a journal or multivolume work
year
Year---should contain only numerals
---------------------------------------------------------
Entry to this mode calls the value of bibtex-mode-hook if that value is
non-nil." nil])
(fset 'bibtex-move-outside-of-entry #[nil "`dU¼É`eU¼ï└┴!¼å┬ ê├ ê─┼d╞#ç" [looking-at "[ \n]*@" backward-paragraph forward-paragraph re-search-forward "[ \n]*" t] 4 "\
Make sure we are outside of